SCAVEN v.1.02
Copyright  2001 Piotr J. Walczak
idem@pjwalczak.com


DISCLAIMER
==========
THIS SOFTWARE IS PROVIDED BY PIOTR J. WALCZAK (THE AUTHOR) 
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, 
BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY 
AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 

IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, 
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 
OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 
OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
POSSIBILITY OF SUCH DAMAGE.


COPYRIGHT AND LICENCE INFORMATION
=================================
This software program and associated documentation was 
developed and is copyrighted (c) 2001 by Piotr J. Walczak.
This software is provided for personal use only. It may be 
freely distributed, but may not be sold except for a nominal 
handling fee. Use of the software for anything other than 
is stated here, requires written permission from the author.



THE PROGRAM
===========

SCAVEN is a micro-tool for data recovery. It was designed to 
perform unattended multi-string searches through large hard 
drives. It records position of matches found to the output
text file in a sector:offset:match format (fixed size column).

SCAVEN is an effective tool and time saver in the recovering 
data from:

  * files permanently deleted
  * files lost through overwrite
  * accidentally formatted drives
  * drives with damaged MBR / lost partitions
  * drives with corrupted FATs
  * drives which developed bad sectors

SCAVEN will not help if:

  * drive developed mechanical problems (strange metallic sounds)
  * motor is dead (not spinning at all)
  * controller failed (drive not detected by BIOS)


Note: This tool was written specifically to deal with large hard 
drives (> 2GB). It requires drive to have BIOS with int13h 
extension.



HOW TO USE
==========

1. Enter strings to search for to SEARCH.TXT file. Every string
   should end with CRLF (ENTER key). Save file.

2. Run SCAVEN (for command line switches see below)

3. Check results in FOUND.TXT file.

NOTE 1: by default SEARCH.TXT contain single word "example". So
        SCAVEN will search for any occurence of string "example" 
        unless its contents wasn't replaced with other strings.

NOTE 2: if output file is located on scanned drive - it will
        obviously "find" all _found_ strings. 



SYNTAX
======

SCAVEN /d[1] [/s[0]] [/e[MAXSEC]] [/i[search.txt]] [/o[found.txt]]

    /d[1] (1-127)   - physical hard-drive number
    /s[0]           - start sector to scan
    /e[MAXSEC]      - end sector to scan
    /i[search.txt]  - full path to input file name
    /o[found.txt]   - full path to output file name

  Input file:   user created plain text file - enter here
                strings to search for (separated by CRLF)

  Output file:  contains recorded position of found data
                and bad-sectors position.




FEATURES
========

  * perform multiple-string search in single pass.
  * work with any size LBA hard-drive (up to 138GB should be OK).
  * autodetect drive geometry (CHS and LBA)
  * can access drives even not visible for DOS.
  * fit on single floppy and leave a plenty of room (size <10k).
  * records position of matches found as sector number:offset
  * records location of bad sectors as a sector number
  * use standard text files for input / output.
  * was written in a plain assembler for the sake of size / speed.
  * to remove program just delete its directory.




BACKGROUND
==========

Dealing occasionally with data recovery I wanted a tool that:

  1. can search for multiple strings in single pass.
  2. will store results to a single file for easy 
     reference / post processing.
  3. can access drive below OS level (absolute sectors).
  4. will gracefully recover from most disk errors.
  5. won't trip on bad sectors.
  6. will work on LARGE hard-drives.
  7. and above all - will not require my assistance nor
     draw my attention until is done.

being unable to find what I need - I had no option but to write 
one.

Those who ever had to dig the data from the drive that developed
bad sectors, already know how excruciating exercise it could be
(especially if it was say a 20 GB drive). In nova-days drives
data are packed very densely. The same size weak spot that caused 
bad sector or two in 100 MB drive may cause like 100 - 200 
consecutive bad sectors in the 10 GB drive. Now, if disk editor 
program ask user - what to do about every single bad sector - it 
may keep him/her tied to computer for hours until match is found. 
Even worst if there was more weak spots and/or data were not in 
continuos chain - operation may take days. SCAVEN searches hard 
drive for data, and record all matches plus bad-sector location
to the output file without nagging the user for assistance.



PLEASE NOTE
===========
As program is doing what expected in a reasonable manner,
I decided to release it to public. However I haven't done 
any extensive testing yet. I am quite sure that it still 
contains some "undocumented features". If you encounter 
anything unusual - it is probably something I should know 
about, so please let me know. 

- This software was tested with DOS, Windows 95 (OSR 2) 
and 98 (as a DOS session) and seems to work fine. I would
gladly know about its performance anywhere else.



LATEST VERSION
==============
For latest version of SCAVEN check on www.pjwalczak.com




